

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>3.4.1.3. PySimple1 Material &mdash; OpenSees Documentation  documentation</title>
  

  
  
  
  

  
  <script type="text/javascript" src="../../../../_static/js/modernizr.min.js"></script>
  
    
      <script type="text/javascript" id="documentation_options" data-url_root="../../../../" src="../../../../_static/documentation_options.js"></script>
        <script type="text/javascript" src="../../../../_static/jquery.js"></script>
        <script type="text/javascript" src="../../../../_static/underscore.js"></script>
        <script type="text/javascript" src="../../../../_static/doctools.js"></script>
        <script type="text/javascript" src="../../../../_static/language_data.js"></script>
        <script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
    
    <script type="text/javascript" src="../../../../_static/js/theme.js"></script>

    

  
  <link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
  <link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
  <link rel="stylesheet" href="../../../../_static/css/custom.css" type="text/css" />
    <link rel="index" title="Index" href="../../../../genindex.html" />
    <link rel="search" title="Search" href="../../../../search.html" />
    <link rel="next" title="3.4.1.4. TzSimple1 Material" href="TzSimple1.html" />
    <link rel="prev" title="3.4.1.2. Steel02 Material" href="Steel02.html" /> 
</head>

<body class="wy-body-for-nav">

   
  <div class="wy-grid-for-nav">
    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search" >
          

          
            <a href="../../../../index.html">
          

          
            
            <img src="../../../../_static/OpenSeesLogo.png" class="logo" alt="Logo"/>
          
          </a>

          
            
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <p class="caption"><span class="caption-text">Applications for Users</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../../interpreters.html">1. OpenSees Interpreters</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../install.html">2. Installation</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../../../userManual.html">3. Command Manual</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../../modelCommands.html">3.1. Modelling Commands</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../analysisCommands.html">3.2. Analysis Commands</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../outputCommands.html">3.3. Output Commands</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../../materialCommands.html">3.4. Material Commands</a><ul class="current">
<li class="toctree-l3 current"><a class="reference internal" href="../uniaxialMaterial.html">3.4.1. uniaxialMaterial Command</a><ul class="current">
<li class="toctree-l4"><a class="reference internal" href="Steel01.html">3.4.1.1. Steel01 Material</a></li>
<li class="toctree-l4"><a class="reference internal" href="Steel02.html">3.4.1.2. Steel02 Material</a></li>
<li class="toctree-l4 current"><a class="current reference internal" href="#">3.4.1.3. PySimple1 Material</a></li>
<li class="toctree-l4"><a class="reference internal" href="TzSimple1.html">3.4.1.4. TzSimple1 Material</a></li>
<li class="toctree-l4"><a class="reference internal" href="QzSimple1.html">3.4.1.5. QzSimple1 Material</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../miscCommands.html">3.5. Misc. Commands</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../../userExamples.html">4. Examples</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../messageBoard.html">5. Questions, Bugs &amp; Feauture Requests</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/license.html">6. Copyright and License</a></li>
</ul>
<p class="caption"><span class="caption-text">Framework for Developer</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/sourceCode.html">1. Source Code</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/build.html">2. Building Application</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/references.html">3. References</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/extend.html">4. Extending Application</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/contribute.html">5. Contributing Code</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../developer/issues.html">6. Issues</a></li>
</ul>

            
          
        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="../../../../index.html">OpenSees Documentation</a>
        
      </nav>


      <div class="wy-nav-content">
        
        <div class="rst-content">
        
          















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="../../../../index.html">Docs</a> &raquo;</li>
        
          <li><a href="../../../userManual.html"><span class="section-number">3. </span>Command Manual</a> &raquo;</li>
        
          <li><a href="../../materialCommands.html"><span class="section-number">3.4. </span>Material Commands</a> &raquo;</li>
        
          <li><a href="../uniaxialMaterial.html"><span class="section-number">3.4.1. </span>uniaxialMaterial Command</a> &raquo;</li>
        
      <li><span class="section-number">3.4.1.3. </span>PySimple1 Material</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="../../../../_sources/user/manual/model/uniaxialMaterials/PySimple1.rst.txt" rel="nofollow"> View page source</a>
          
        
      </li>
    
  </ul>

  
  <hr/>
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="pysimple1-material">
<span id="pysimple1"></span><h1><span class="section-number">3.4.1.3. </span>PySimple1 Material<a class="headerlink" href="#pysimple1-material" title="Permalink to this headline">¶</a></h1>
<p>This command is used to construct a PySimple1 uniaxial material object:</p>
<dl class="function">
<dt>
<code class="sig-name descname">uniaxialMaterial PySimple1 $matTag $soilType $pult $Y50 $Cd &lt;$c&gt;</code></dt>
<dd></dd></dl>

<table class="colwidths-given docutils align-default">
<colgroup>
<col style="width: 17%" />
<col style="width: 17%" />
<col style="width: 67%" />
</colgroup>
<thead>
<tr class="row-odd"><th class="head"><p>Argument</p></th>
<th class="head"><p>Type</p></th>
<th class="head"><p>Description</p></th>
</tr>
</thead>
<tbody>
<tr class="row-even"><td><p>$matTag</p></td>
<td><p><em>integer</em></p></td>
<td><p>integer tag identifying material</p></td>
</tr>
<tr class="row-odd"><td><p>$soilType</p></td>
<td><p><em>integer</em></p></td>
<td><p>= 1 for clay; = 2 for sand. see note below.</p></td>
</tr>
<tr class="row-even"><td><p>$pult</p></td>
<td><p><em>float</em></p></td>
<td><p>Ultimate capacity of the p-y material.</p></td>
</tr>
<tr class="row-odd"><td><p>$Y50</p></td>
<td><p><em>float</em></p></td>
<td><p>Displacement at which 50% of pult is mobilized in monotonic loading.</p></td>
</tr>
<tr class="row-even"><td><p>$Cd</p></td>
<td><p><em>float</em></p></td>
<td><p>To set the drag resistance within a fully-mobilized gap as Cd*pult.</p></td>
</tr>
<tr class="row-odd"><td><p>$c</p></td>
<td><p><em>float</em></p></td>
<td><p>The viscous damping term (dashpot). (optional Default = 0.0).</p></td>
</tr>
</tbody>
</table>
<div class="admonition note">
<p class="admonition-title">Note</p>
<p>$soilType = 1 Backbone of p-y curve approximates Matlock (1970) soft clay relation.</p>
<p>soilType = 2 Backbone of p-y curve approximates API (1993) sand relation.</p>
<p>The “p” or “pult” are distributed loads [force per length of pile] in common design equations, but are both loads for this uniaxialMaterial [i.e., distributed load times the tributary length of the pile].</p>
<p>The viscous damping term (dashpot) on the far-field (elastic) component of the displacement rate (velocity). Nonzero $c values are used to represent radiation damping effects. See theory below.</p>
<p>In general the <span class="xref std std-ref">hht</span> algorithm is preferred over a <span class="xref std std-ref">newmark</span> algorithm when using this material. This is due to the numerical oscillations that can develop with viscous damping forces under transient loading with certain solution algorithms and damping ratios.</p>
</div>
<p>The equations describing PySimple1 behavior are described in <a class="reference internal" href="QzSimple1.html#boulangeretal1999" id="id1"><span>[BoulangerEtAl1999]</span></a>. Only minor changes have been made in its implementation for OpenSees.</p>
<p>The nonlinear <span class="math notranslate nohighlight">\(p-y\)</span> behavior is conceptualized as consisting of elastic (<span class="math notranslate nohighlight">\(p-y^e\)</span>), plastic (<span class="math notranslate nohighlight">\(p-y^p\)</span>), and gap <span class="math notranslate nohighlight">\((p-y^g)\)</span> components in series. Radiation damping is modeled by a dashpot on the “far-field” elastic component <span class="math notranslate nohighlight">\((p-y^e)\)</span> of the displacement rate. The gap component consists of a nonlinear closure spring (<span class="math notranslate nohighlight">\(p^c-y^g\)</span>) in parallel with a nonlinear drag spring <span class="math notranslate nohighlight">\((p^d-y^g)\)</span>. Note that <span class="math notranslate nohighlight">\(y = y^e + y^p + y^g\)</span>, and that <span class="math notranslate nohighlight">\(p = p^d + p^c\)</span>.</p>
<p>The plastic component has an initial range of rigid behavior between <span class="math notranslate nohighlight">\(-C_r p_{ult} &lt; p &lt; C_r p_{ult}\)</span> with <span class="math notranslate nohighlight">\(C_r\)</span> = the ratio of <span class="math notranslate nohighlight">\(p/p_{ult} \)</span>, which is initially <span class="math notranslate nohighlight">\(2 C_r p_{ult}\)</span>, translates with plastic yielding (kinematic hardening). The rigid range of <span class="math notranslate nohighlight">\(p\)</span> can be constrained to maintain a minimum size on both the positive and negative loading sides (e.g., 25% of <span class="math notranslate nohighlight">\(p{ult}\)</span>), and this is accomplished by allowing the rigid range to expand or contract as necessary. Beyond the rigid range, loading of the plastic <span class="math notranslate nohighlight">\((p-y^p)\)</span> component is described by:</p>
<div class="math notranslate nohighlight">
\[p = p_{{ult}} - (p_{{ult}} - p_o) \left [\frac{c y_{50}}{c y_{50} + | z_p - z^p_0|} \right ]^n\]</div>
<p>where <span class="math notranslate nohighlight">\(p_{ult}\)</span> = the ultimate resistance of the <span class="math notranslate nohighlight">\(p-y\)</span> material in the current loading direction, <span class="math notranslate nohighlight">\(p_o = p\)</span> at the start of the current plastic loading cycle, <span class="math notranslate nohighlight">\(y^p_o = y_p\)</span> at the start of the current plastic loading cycle, <span class="math notranslate nohighlight">\(c\)</span> = constant to control the tangent modulus at the start of plastic yielding, and n = an exponent to control sharpness of the <span class="math notranslate nohighlight">\(p-y^p\)</span> curve.</p>
<p>The closure <span class="math notranslate nohighlight">\((p^c-y^g)\)</span> spring is described by:</p>
<p><span class="math notranslate nohighlight">\(p^c = 1.8 p_{{ult}} \left [\frac{y_{50}}{y_{50} + 50(y_o^{+} - y^g)} - \frac{y_{50}}{y_{50} + 50(y_o^{-} - y^g)} \right ] \)</span> = memory term for the positive side of the gap, <span class="math notranslate nohighlight">\(y_o^-\)</span> and <span class="math notranslate nohighlight">\(y_o^-\)</span> were set as <span class="math notranslate nohighlight">\(y_{50}/100\)</span> and <span class="math notranslate nohighlight">\(- y_{50}/100\)</span>, respectively. The factor of 1.8 brings <span class="math notranslate nohighlight">\(p^c\)</span> up to <span class="math notranslate nohighlight">\(p_{ult}\)</span> during virgin loading to <span class="math notranslate nohighlight">\(y_o^+\)</span> (or <span class="math notranslate nohighlight">\(y_o^-\)</span>). Gap enlargement follows logic similar to that of Matlock et al. (1978). The gap grows on the positive side when the plastic deformation occurs on the negative loading side. Consequently, the <span class="math notranslate nohighlight">\(y_o^+\)</span> value equals the opposite value of the largest past negative value of, <span class="math notranslate nohighlight">\(y^p + y^g + 1.5 y_{50}\)</span> where the <span class="math notranslate nohighlight">\(1.5y_{50}\)</span> represents some rebounding of the gap. Similarly, the <span class="math notranslate nohighlight">\(y_o^-\)</span> value equals the opposite value of the largest past positive value of <span class="math notranslate nohighlight">\(y^p+y^g-1.5y_{50}\)</span>. This closure spring allows for a smooth transition in the load displacement behavior as the gap opens or closes.</p>
<p>The nonlinear drag <span class="math notranslate nohighlight">\((p^d-y^g)\)</span> spring is described by:</p>
<div class="math notranslate nohighlight">
\[p^d = C_d p_{{ult}} - (C_d p_{{ult}} - p^d_o) \left [\frac{y_{50}}{y_{50} + 2| y^g - y^g_o|} \right ]^n\]</div>
<p>where <span class="math notranslate nohighlight">\(C_d =\)</span> ratio of the maximum drag force to the ultimate resistance of the p-y material, <span class="math notranslate nohighlight">\(d^p_o =p^d\)</span> at the start of the current loading cycle, and <span class="math notranslate nohighlight">\(y^g_o = y^g\)</span> at the start of the current loading cycle.</p>
<p>The flexibility of the above equations can be used to approximate different p-y backbone relations. Matlock’s (1970) recommended backbone for soft clay is closely approximated using <span class="math notranslate nohighlight">\(c = 10\)</span>, <span class="math notranslate nohighlight">\(n = 5\)</span>, and <span class="math notranslate nohighlight">\(C_r = 0.35\)</span>. API’s (1993) recommended backbone for drained sand is closely approximated using <span class="math notranslate nohighlight">\(c = 0.5\)</span>, <span class="math notranslate nohighlight">\(n = 2\)</span>, and <span class="math notranslate nohighlight">\(C_r = 0.2\)</span>. PySimple1 is currently implemented to allow use of these two default sets of values. Values of <span class="math notranslate nohighlight">\(p_{ult}\)</span>, <span class="math notranslate nohighlight">\(y_{50}\)</span>, and <span class="math notranslate nohighlight">\(C_d\)</span> must then be specified to define the <span class="math notranslate nohighlight">\(p-y\)</span> material behavior.</p>
<p>Viscous damping on the far-field (elastic) component of the p-y material is included for approximating radiation damping. For implementation in OpenSees the viscous damper is placed across the entire material, but the viscous force is calculated as proportional to the component of velocity (or displacement) that developed in the far-field elastic component of the material. For example, this correctly causes the damper force to become zero during load increments across a fully formed gap. In addition, the total force across the p-y material is restricted to pult in magnitude so that the viscous damper cannot cause the total force to exceed the near-field soil capacity. Users should also be familiar with numerical oscillations that can develop in viscous damper forces under transient loading with certain solution algorithms and damping ratios. In general, an HHT algorithm is preferred over a Newmark algorithm for reducing such oscillations in materials like PySimple1.</p>
<div class="align-center figure">
<img alt="../../../../_images/PySimple1A.gif" src="../../../../_images/PySimple1A.gif" />
</div>
<div class="align-center figure">
<img alt="../../../../_images/PySimple1B.gif" src="../../../../_images/PySimple1B.gif" />
</div>
<div class="admonition-example admonition">
<p class="admonition-title">Example</p>
<p>The following constructs a PySimple material with tag <strong>1</strong>, soil type <strong>2</strong> (sand), <span class="math notranslate nohighlight">\(p_{ult}\)</span> of <strong>4577.81</strong> and a <span class="math notranslate nohighlight">\(Y_{50}\)</span> of <strong>0.0066</strong>. Cd is set to <strong>0.0</strong> for zero damping.</p>
<ol class="arabic simple">
<li><p><strong>Tcl Code</strong></p></li>
</ol>
<div class="highlight-tcl notranslate"><div class="highlight"><pre><span></span><span class="nv">uniaxialMaterial</span> PySimple1 <span class="mi">1</span>  <span class="mi">2</span>  <span class="mf">4577.81</span>  <span class="mf">0.0066</span> <span class="mf">0.0</span>
</pre></div>
</div>
<ol class="arabic simple" start="2">
<li><p><strong>Python Code</strong></p></li>
</ol>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">uniaxialMaterial</span><span class="p">(</span><span class="s1">&#39;PySimple1&#39;</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mf">4577.81</span><span class="p">,</span> <span class="mf">0.0066</span><span class="p">,</span> <span class="mf">0.0</span><span class="p">)</span>
</pre></div>
</div>
</div>
<p>Code Developed by: <a class="reference external" href="https://faculty.engineering.ucdavis.edu/boulanger/">Ross Boulanger</a>, UC Davis</p>
<dl class="citation">
<dt class="label" id="boulangeretal1999"><span class="brackets"><a class="fn-backref" href="#id1">BoulangerEtAl1999</a></span></dt>
<dd><p>Boulanger, R. W., Curras, C. J., Kutter, B. L., Wilson, D. W., and Abghari, A. (1999). “Seismic soil-pile-structure interaction experiments and analyses.” Journal of Geotechnical and Geoenvironmental Engineering, ASCE, 125(9): 750-759. Only minor changes have been made in its implementation for OpenSees.</p>
</dd>
<dt class="label" id="boulangeretal1990"><span class="brackets">BoulangerEtAl1990</span></dt>
<dd><p>Boulanger, R.W., Curras, C.J., Kutter, B.L., Wilson, D.W., and Abghari, A. (1990). “Seismic Soil-pile-strcture interaction experiments and analysis”, Jornal of Geotechnical and Geoenvironmental Engineering, ASCS, 125(9):750-759.</p>
</dd>
</dl>
</div>


           </div>
           
          </div>
          <footer>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright 2020, The Regents of the University of California

    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  


  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.Navigation.enable(true);
      });
  </script>

  
  
    
    <!-- Theme Analytics -->
    <script>
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

    ga('create', 'UA-2431545-1', 'auto');
    ga('send', 'pageview');
    </script>

    
    

  <style>
         .wy-nav-content { max-width: none; }
  </style>



</body>
</html>